package com.example.book.enums;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: Hua YY
 * Date: 2024-12-12
 * Time: 12:22
 */
public enum BookStatus {
    /*
    * 枚举类中不能使用@Data注解生成get和set方法
    * 枚举的名称全大写*/

    DELETE(0,"删除"),
    NOMAL(1,"可借阅"),
    FORBIDDEN(2,"不可借阅"),
    ;


//  构造方法
    BookStatus(Integer code, String desc) {
        this.code = code;
        this.desc = desc;
    }

//    两个成员变量
    private Integer code;
    private String desc;  //descibstion描述的缩写

//    通过code的值来拿取desc，设置为静态方法
//    这里可以写成map的方式，String的方式，BookStatus类方式
    public static BookStatus getDescByCode(Integer code){
        switch(code){
            case 0:
                return DELETE;
            case 1:
                return NOMAL;
            default:
                return FORBIDDEN;

        }
    }


//    get和set方法

    public Integer getCode() {
        return code;
    }

    public void setCode(Integer code) {
        this.code = code;
    }

    public String getDesc() {
        return desc;
    }

    public void setDesc(String desc) {
        this.desc = desc;
    }




}
